/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.cip.esymons.tesoreria.bc;

import java.util.List;
import javax.ejb.Local;
import org.cip.esymons.general.be.PersonaJuridica;
import org.cip.esymons.general.be.PersonaNatural;
import org.cip.esymons.general.be.Solicitante;
import org.cip.esymons.tesoreria.be.CuentaBancaria;
import org.cip.esymons.tesoreria.be.EnumEstadoCuentaBancaria;
import org.cip.esymons.tesoreria.be.EnumTipoCuentaBancaria;
import org.cip.esymons.tesoreria.be.TipoMoneda;

/**
 *
 * @author Administrador
 */
@Local
public interface CuentaBancariaFacadeLocal {

    void create(CuentaBancaria cuentaBancaria);

    void edit(CuentaBancaria cuentaBancaria);

    void remove(CuentaBancaria cuentaBancaria);

    CuentaBancaria find(Object id);

    List<CuentaBancaria> findAll();

    int contarBuscarCuentaBancaria(String cuentaPerteneceA, PersonaNatural personaSeleccionada, PersonaJuridica empresaSeleccionada, EnumTipoCuentaBancaria tipoCuentaBancariaSeleccionada, TipoMoneda tipoMonedaSeleccionada, PersonaJuridica bancoSeleccionado, EnumEstadoCuentaBancaria estadoCuentaBancariaSeleccionado);

    List<CuentaBancaria> buscarCuentaBancaria(int cantidad, int posicion, String cuentaPerteneceA, PersonaNatural personaSeleccionada, PersonaJuridica empresaSeleccionada, EnumTipoCuentaBancaria tipoCuentaBancariaSeleccionada, TipoMoneda tipoMonedaSeleccionada, PersonaJuridica bancoSeleccionado, EnumEstadoCuentaBancaria estadoCuentaBancariaSeleccionado);

    List<CuentaBancaria> buscarPorBanco(PersonaJuridica personaJuridica);

    List<CuentaBancaria> buscarCBPorSolicitante(Solicitante solicitante);

    PersonaJuridica buscarBancodeCB(String codigo);
}
